<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
    <IncludeRemoteExecutor>true</IncludeRemoteExecutor>
    <TargetFrameworks>$(NetCoreAppCurrent)-windows;$(NetCoreAppCurrent)-unix;$(NetCoreAppCurrent)</TargetFrameworks>
    <IgnoreForCI Condition="'$(TargetOS)' == 'browser'">true</IgnoreForCI>
  </PropertyGroup>
  <ItemGroup>
    <Compile Include="AssemblyInfo.cs" />
    <Compile Include="XunitAssemblyAttributes.cs" />
  </ItemGroup>
  <ItemGroup Condition="'$(TargetPlatformIdentifier)' != ''">
    <Compile Include="AnonymousPipeTests\AnonymousPipeTest.CreateServer.cs" />
    <Compile Include="AnonymousPipeTests\AnonymousPipeTest.CreateClient.cs" />
    <Compile Include="AnonymousPipeTests\AnonymousPipeTest.CrossProcess.cs" />
    <Compile Include="AnonymousPipeTests\AnonymousPipeTest.Specific.cs" />
    <Compile Include="NamedPipeTests\NamedPipeTest.CreateServer.cs" />
    <Compile Include="NamedPipeTests\NamedPipeTest.CreateClient.cs" />
    <Compile Include="NamedPipeTests\NamedPipeTest.CrossProcess.cs" />
    <Compile Include="NamedPipeTests\NamedPipeTest.CurrentUserOnly.cs" />
    <Compile Include="NamedPipeTests\NamedPipeTest.Specific.cs" />
    <Compile Include="PipeStream.ProtectedMethods.Tests.cs" />
    <Compile Include="PipeStreamConformanceTests.cs" />
    <Compile Include="UnifiedErrorHandlingTests.cs" />
    <Compile Include="$(CommonTestPath)System\Threading\Tasks\TaskTimeoutExtensions.cs" Link="Common\System\Threading\Tasks\TaskTimeoutExtensions.cs" />
  </ItemGroup>
  <ItemGroup Condition="'$(TargetPlatformIdentifier)' == 'windows'">
    <Compile Include="NamedPipeTests\NamedPipeTest.CreateClient.Windows.cs" />
    <Compile Include="NamedPipeTests\NamedPipeTest.CurrentUserOnly.Windows.cs" />
    <Compile Include="NamedPipeTests\NamedPipeTest.MessageMode.Windows.cs" />
    <Compile Include="NamedPipeTests\NamedPipeTest.RunAsClient.Windows.cs" />
    <Compile Include="InteropTest.Windows.cs" />
    <Compile Include="$(CommonPath)Interop\Windows\Kernel32\Interop.CancelIoEx.cs" Link="Common\Interop\Windows\Interop.CancelIoEx.cs" />
    <Compile Include="$(CommonPath)Interop\Windows\Kernel32\Interop.LoadLibraryEx_IntPtr.cs" Link="Common\Interop\Windows\Interop.LoadLibraryEx_IntPtr.cs" />
    <Compile Include="$(CommonPath)Interop\Windows\Interop.Errors.cs" Link="Common\Interop\Windows\Interop.Errors.cs" />
    <Compile Include="$(CommonPath)Interop\Windows\Interop.Libraries.cs" Link="Common\Interop\Windows\Interop.Libraries.cs" />
    <Compile Include="$(CommonPath)Interop\Windows\Kernel32\Interop.GetNamedPipeHandleState.cs" Link="Common\Interop\Windows\Interop.GetNamedPipeHandleState.cs" />
    <Compile Include="$(CommonPath)Interop\Windows\Kernel32\Interop.MaxLengths.cs" Link="Common\Interop\Windows\Interop.MaxLengths.cs" />
  </ItemGroup>
  <ItemGroup Condition="'$(TargetPlatformIdentifier)' == 'unix'">
    <Compile Include="NamedPipeTests\NamedPipeTest.CreateClient.Unix.cs" />
    <Compile Include="NamedPipeTests\NamedPipeTest.CurrentUserOnly.Unix.cs" />
    <Compile Include="NamedPipeTests\NamedPipeTest.UnixDomainSockets.cs" />
    <Compile Include="NamedPipeTests\NamedPipeTest.RunAsClient.Unix.cs" />
    <Compile Include="InteropTest.Unix.cs" />
    <Compile Include="NativeOverlapped.unix.cs" />
  </ItemGroup>
  <ItemGroup>
    <ProjectReference Include="$(LibrariesProjectRoot)System.DirectoryServices\src\System.DirectoryServices.csproj" />
    <ProjectReference Include="$(LibrariesProjectRoot)System.DirectoryServices.AccountManagement\src\System.DirectoryServices.AccountManagement.csproj" />
  </ItemGroup>
  <ItemGroup>
    <ProjectReference Include="$(CommonTestPath)StreamConformanceTests\StreamConformanceTests.csproj" />
  </ItemGroup>
</Project>
